home *** CD-ROM | disk | FTP | other *** search
-
-
- **** PD3DCTL IS PUBLIC DOMAIN AND NOT FOR SALE ****
-
-
-
- Antic presents
- PD3DCTL.ACC Motion-Control Accessory
- For use with CAD-3D 2.0
- By Tom Hudson
-
-
- PD3DCTL.ACC (Public Domain 3D Control Accessory) is a desk accessory
- which allows you to create a motion-control file (with extension .CTL)
- with a text editor and load it into the accessory for execution from
- within CAD-3D 2.0. The accessory will then control CAD-3D 2.0 as if it
- were being operated by you from the normal user interface, creating a
- CYBERMATE animation sequence. When changes are made to modes or
- objects, you will not see the CAD-3D control panel change -- it will be
- updated when the accessory terminates.
-
- This admittedly rough accessory was the test bed for the CAD-3D 2.0
- desk accessory communication pipeline during the program's development.
- A full-featured interpreted control language with variables, labels and
- MANY more commands will be available October from THE CATALOG. In
- addition to fully automated control of all currently available CAD-3D
- 2.0 functions, this new product will add many new functions to CAD-3D
- 2.0 and make possible the creation of highly complex animation
- sequences.
-
- The .CTL control files are simple text files in which each line is a
- command for CAD-3D 2.0. The files can be created and edited by any
- ASCII text editor, such as MicroEMACS, 1ST Word (in ASCII mode), or any
- of the commercially available word processing programs. Alternatively,
- there is a very handy public domain desk accessory called WORD400.ACC
- which can be used from within CAD-3D 2.0. You can find WORD400.ACC in
- DL4 of SIG*ATARI16. Whichever editor you use, be sure and set it up so
- that it does not output left margins.
-
- The general format of the command lines are:
-
- CCCC <parameter 1>,<parameter 2>, ... <parameter n>
-
- Where CCCC is a 4-character command string and <parameter> is an
- optional alphanumeric and/or numeric parameter as specified in the
- command summary below. Note: The four-character command is not
- case-sensitive; loop and LOOP will work exactly alike.
-
- Comments may be entered with a ';' character as the first character in
- the line, like so:
-
- ;Comment line
-
- Parameters are separated by a single comma. Do not use spaces in
- parameters.
-
-
- Miscellaneous notes.
-
- The 3D axis system in CAD-3D may be confusing at first, since it is
- oriented slightly differently than other programs. The X axis runs
- from left to right in the CAD-3D universe, with the leftmost value in
- the universe -45.00. The rightmost value is 45.00. The Y axis runs
- from front to back with the same limits. The Z axis runs from bottom
- to top with the same limits. Think of the X/Y plane as being a table
- or other flat surface parallel with the ground, and the Z axis as the
-
- - 1 -
-
-
-
-
- altitude.
-
- When referring to the values within the universe (which run from -45.00
- to 45.00 in all three axes), this accessory expects to have them in an
- integer form. This is a simple operation -- a value of 30.76 is
- entered as 3076. Just drop the decimal point. Similarly, a value of
- -19.00 is entered as -1900. You will find that it helps to think of
- the universe as being a cube 9000 units on a side, ranging from -4500
- to 4500.
-
- Object names are used to refer to the objects within the 3D universe.
- These names are up to eight characters in length, and are
- case-sensitive. For example, CUBE is not the same object as cube or
- Cube or CUbe. This can come in handy when referring to several similar
- objects.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - 2 -
-
-
-
-
-
-
- COMMANDS
- --------
-
- BASIC OPERATIONS
- ----------------
-
- COLR name,color
-
- Recolors the specified object to the specified color. Example: COLR
- block,15 recolors "block" to color 15. Color must range from 1-15.
-
- -----------------------------------------------------------------------
- ----
-
- KILL name
-
- Deletes the named object. KILL froon will delete the object "froon",
- if present.
-
- -----------------------------------------------------------------------
- ----
-
- DUPL name,copyname
-
- Makes an exact duplicate of an object, in the same location. If there
- is an object named THING, the command DUPL THING,THING2 will make a
- copy called THING2.
-
- -----------------------------------------------------------------------
- ----
-
- VIEW OPERATIONS
- ---------------
-
- ZOOM value
-
- Sets the camera zoom. Range from 0-999. Example: ZOOM 100
-
- -----------------------------------------------------------------------
- ----
-
- PSPC value
-
- Sets the perspective from 0-999. Example: PSPC 999
-
- -----------------------------------------------------------------------
- ----
-
- CAM1 hrot,vrot,bank
-
- Sets the camera to a specific orientation. All values range from -180
- to 180. Example: CAM1 0,-40,180
-
- -----------------------------------------------------------------------
- ----
-
- VMOD mode
-
-
- - 3 -
-
-
-
-
- Set view mode of super view. Range 0-4 as shown below. Example: VMOD
- 2 sets solid mode.
-
- modes:
- 0: Wire
- 1: Hidden
- 2: Solid
- 3: Outlined
- 4: Use camera
-
- -----------------------------------------------------------------------
- ----
-
- DFMD mode
-
- Set draft mode (0) or final mode (1). Example: DFMD 1 sets final
- (z-buffer).
-
- -----------------------------------------------------------------------
- ----
-
- SSEP sep
-
- Sets stereo separation. "sep" ranges from 1-100%. Example: SSEP 100
- sets maximum stereo separation.
-
- -----------------------------------------------------------------------
- ----
-
- STEF effect
-
- Sets the stereo effect to in (0), centered (1) or out (2). Example:
- STEF 0 sets stereo effect to in. Cannot be altered during an
- animation.
-
- -----------------------------------------------------------------------
- ----
-
- STSW switch
-
- Switches stereo off (0) or on (1). Example: STSW 1 turns on stereo.
- Cannot be altered during an animation.
-
- -----------------------------------------------------------------------
- ----
-
- EDGE mode
-
- Sets to edges only (0) or all lines (1).
-
- -----------------------------------------------------------------------
- ----
-
- C1MV hdelta,vdelta,bdelta
-
- Moves the camera "delta" degrees on each axis. Each delta can range
- from -180 to 180. Example: C1MV 3,-6,20 adds 3 to hrot, -6 to vrot,
- and 20 to the bank angle.
-
- -----------------------------------------------------------------------
-
- - 4 -
-
-
-
-
- ----
-
- CHGZ value
-
- Changes the zoom factor by the specified value. CHGZ -10 subtracts ten
- from the zoom factor; CHGZ 100 adds 100 to it.
-
- -----------------------------------------------------------------------
- ----
-
- CHGP value
-
- Changes the perspective factor by the specified value. CHGP -147
- subtracts 147 from the perspective factor; CHGP 456 adds 456 to it.
-
- -----------------------------------------------------------------------
- ----
-
- SUPR
-
- Generates a super view in the super view buffer. Does not show the
- image. This is basically for generating an image that you want to move
- to the background buffer with the VUBG command.
-
- -----------------------------------------------------------------------
- ----
-
-
-
- RECORDER OPERATIONS
- -------------------
-
- RCON path,filename,mode
-
- Turns on the recording mode. "path" is the drive/path specification,
- "filename" is the filename to use for the animation, and mode is 0 for
- Sequential, 1 for Cybermate mono, or 2 for Cybermate stereo. Example:
- RCON c:\,anitest,1 starts a mono Cybermate animation on drive c: in
- the root directory (be sure to include the '\' character) called
- "anitest". If you're going to a folder, use RCON b:\folder\,froon,1.
-
- -----------------------------------------------------------------------
- ----
-
- RCRD
-
- Records a frame of animation. RCON must have been successfully
- executed.
-
- -----------------------------------------------------------------------
- ----
-
- RCOF
-
- Turns off recording, closing the animation file.
-
- -----------------------------------------------------------------------
- ----
-
- GROUP OPERATIONS
-
- - 5 -
-
-
-
-
- ----------------
-
- SGRP group
-
- Selects group 0-3, corresponding to A-D. Example: SGRP 2 selects group
- C.
-
- -----------------------------------------------------------------------
- ----
-
- HOME
-
- Homes the current group.
-
- -----------------------------------------------------------------------
- ----
-
- SCAL percent
-
- Scales the current group from 50-200 percent. Example: SCAL 157
- scales the group to 157%.
-
- -----------------------------------------------------------------------
- ----
-
- RCTR type
-
- Sets the rotational center to universe (0), group (1) or arbitrary (2).
- Example: RCTR 0 sets universe mode.
-
- -----------------------------------------------------------------------
- ----
-
- ARBC x,y,z
-
- Sets the arbitrary rotation center to the X,Y,Z coords. Values range
- from -4500 to 4500, the integer equivalents of -45.00 to 45.00. 0,0,0
- is the universe center. Example: ARBC 1000,2000,-2345 sets the
- arbitrary center to X=10.00, Y=20.00 Z=-23.45.
-
- -----------------------------------------------------------------------
- ----
-
- GROT deltaz,deltax,deltay
-
- Rotates the current group around the rotational center by the specified
- degree increment on the specified axis. Degree values range from -180
- to 180. For best results, use this command one axis at a time.
- Example: GROT 45,0,0 rotates the group 45 degrees around the Z axis.
- Remember -- CAD-3D's axis system is aligned such that the X axis runs
- from left to right, the Y axis runs from front to back and the Z axis
- runs from bottom to top. Therefore, the GROT command can be thought of
- as: GROT toprot,rightrot,frontrot because the rotation is seen from
- the window indicated. The GROT 45,0,0 command will rotate the group 45
- degrees clockwise as seen in the top window. GROT -45,0,0 will return
- it to its previous orientation.
-
- -----------------------------------------------------------------------
- ----
-
-
- - 6 -
-
-
-
-
- AXSC xscale,yscale,zscale
-
- Scales each axis independently. "xscale" is the X axis scale
- percentage, "yscale" is the Y axis scale percentage, and "zscale" is
- the Z axis scale percentage. All percentage values run from 50 to 200
- -- a value of 100 leaves that axis unchanged.
-
- -----------------------------------------------------------------------
- ----
-
- XLAT deltax,deltay,deltaz
-
- Translate the group the specified distance, in integer floating-point
- equivalents, up to 10.00 units. To translate a group of objects 5
- units in the X axis, 5.67 units in the Y axis and -8.89 units in the Z
- axis, use the command: XLAT 500,567,-889.
-
- -----------------------------------------------------------------------
- ----
-
- SLCT name,switch
-
- Select/deselect an object in the current group. "name" is the name of
- the object, switch is 0 (deselect) or 1(select). SLCT cube,1 will
- select the object "cube".
-
- -----------------------------------------------------------------------
- ----
-
- CGRP
-
- Clears the current object group (deselects all objects).
-
- -----------------------------------------------------------------------
- ----
-
- GALL
-
- Selects all objects in the current group.
-
- -----------------------------------------------------------------------
- ----
-
- BUFFER OPERATIONS
- -----------------
-
- BGND switch
-
- Turns the background on (1) or off (0). Background buffer must have
- been reserved at start-up time to use. Example: BGND 0 turns off the
- background.
-
- -----------------------------------------------------------------------
- ----
-
- CLBG
-
- Clears the background.
-
- -----------------------------------------------------------------------
-
- - 7 -
-
-
-
-
- ----
-
- VUBG
-
- Moves the current view to the background buffer
-
- -----------------------------------------------------------------------
- ----
-
- LOOP COMMANDS
- -------------
-
- LOOP count
-
- Starts a loop that will execute "count" times. Loop starts with LOOP
- command, ends with **** command (see below).
-
- Example:
-
- LOOP 40
- C1MV 9,0,0
- RCRD
- ****
-
- Is a loop that will move the camera 9 degrees horizontally 40 times,
- each time recording a frame. This will record a complete circle around
- the scene. You can have nested loops, up to 10 levels.
-
- -----------------------------------------------------------------------
- ----
-
- ****
-
- This command specifies the end of a loop. Be sure to have one of these
- for each loop, or your batch file will probably fail with an error
- message.
-
- -----------------------------------------------------------------------
- ----
-
-
- Have fun with this accessory, and watch for new animation control files
- on CompuServe's Antic On-Line in the CYBER CONNECTION section. If you
- come up with an interesting animation, why not archive the .3D2 file,
- control file and background image, if any, and upload them to SIG*Atari
- and your local BBS's for others to enjoy?
-
- -Tom Hudson/The Catalog
-
-
- NOTE: PD3DCTL.ACC may only be distributed in the public domain for
- free. It may not be resold.
-
-
-
-
-
-
-
-
-
- - 8 -
-
-
-